package com.zzyl.service;

import com.zzyl.base.PageResponse;
import com.zzyl.dto.UserDto;
import com.zzyl.vo.UserVo;

/**
 * @Description UserService
 * @Author Lwj
 * @Date 2024-09-03-15:31
 */
public interface UserService {
    /**
     * 用户分页
     *
     * @param userDto
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageResponse<UserVo> getUserPage(UserDto userDto, Integer pageNum, Integer pageSize);

    /**
     * 用户添加
     *
     * @param userDto
     * @return
     */
    Boolean insertUser(UserDto userDto);

    /**
     * 用户修改
     *
     * @param userDto
     * @return
     */
    Boolean updateUser(UserDto userDto);

    /**
     * 删除用户
     *
     * @param userId
     */
    void deleteUser(Long userId);

    /**
     * 启用或禁用用户
     *
     * @param id
     * @param status
     */
    void setStatus(Long id, String status);

    /**
     * 用户列表
     * @param userDto
     * @return
     */
    UserVo getUserList(UserDto userDto);

    /**
     * 密码重置
     * @param userId
     * @return
     */
    Boolean reSetPassword(String userId);

    /**
     * 当前用户
     * @return
     */
    /* UserVo CurrentUser(UserDto userDto);*/
}
